<h1 id="ohio-congressional-districts">2020 Ohio Congressional
Districts</h1>
<h2 id="redistricting-requirements">Redistricting requirements</h2>
<p>In Ohio, districts must, under <a
href="https://www.legislature.ohio.gov/laws/ohio-constitution/article?id=19">Article
XIX of the Ohio Constitution</a>:</p>
<ol type="1">
<li>be contiguous</li>
<li>have equal populations</li>
<li>be geographically compact</li>
<li>not split Cincinnati or Cleveland</li>
<li>minimize splitting of Columbus</li>
<li>split no more than 18 counties once, and no more than 5 counties
twice, and no counties three times</li>
<li>additionally preserve county and municipality boundaries where
possible</li>
</ol>
<h3 id="algorithmic-constraints">Algorithmic Constraints</h3>
<p>We enforce a maximum population deviation of 0.5%. We employ a
variety of anti-split constraints, both in pre-processing and in
simulation, as detailed below. Ohio also has one VRA district in
Cuyahoga county.</p>
<h2 id="data-sources">Data Sources</h2>
<p>Data for Ohio comes from the ALARM Project’s <a
href="https://alarm-redist.github.io/posts/2021-08-10-census-2020/">2020
Redistricting Data Files</a>. Ohio has many precincts which are not
geographically contiguous, especially in and around Franklin County
(Columbus). We do not attempt to split or otherwise correct these
precincts, which may lead some simulated districts to be geographically
noncontiguous, despite being contiguous according to the precinct
adjacency graph.</p>
<h2 id="pre-processing-notes">Pre-processing Notes</h2>
<p>We merge the precincts in all counties which are not split by the
enacted plan. We merge the cities of Cincinnati and Cleveland.</p>
<h2 id="simulation-notes">Simulation Notes</h2>
<p>We sample 40,000 districting plans for Ohio across two runs of the
SMC algorithm, then filter down to 5,000 total plans. We begin by
sampling plans in Cuyahoga county to generate a VRA district with BVAP
at least 40%. Then we sample the remaining districts. We apply a Gibbs
constraint to discourage multiple splits (a penalty of 100.0 for 3
splits, and 3.0 for 2 splits) We apply a Gibbs constraint to discourage
splitting Columbus (a penalty of 0.5 per splitting district) We use
population tempering of 0.01 to encourage efficiency.</p>
<h2 id="contents">Contents</h2>
<ul>
<li><code>OH_cd_2020_stats.csv</code> contains summary statistics on the
sampled redistricting plans</li>
<li><code>OH_cd_2020_plans.rds</code> is a compressed
<code>redist_plans</code> object, which contains the matrix of
precinct/block assignments and may be used for further analysis.</li>
<li><code>OH_cd_2020_map.rds</code> is a compressed
<code>redist_map</code> object, which contains the precinct/block
shapefile and demographic data.</li>
</ul>
<p>Both the <code>redist_plans</code> and <code>redist_map</code> object
are intended to be used with the <a
href="https://alarm-redist.github.io/redist/">redist package</a>.</p>
<h3 id="codebook-for-summary-statistics">Codebook for summary
statistics</h3>
<ul>
<li><code>draw</code>: unique identifier for each sample. Non-numeric
draw names are real-world plans, e.g., <code>cd_2010</code> for an
enacted 2010 plan.</li>
<li><code>district</code>: a district identifier. District numbers
roughly match those in the enacted plan, but the correspondence is not
perfect.</li>
<li><code>chain</code>: a number identifying the run of the
redistricting algorithm used to produce this draw. Used for diagnostic
purposes.</li>
<li><code>pop_overlap</code>: a number indicating the fraction of people
in this plan who reside in the same-numbered district in the enacted
plan.</li>
<li><code>total_pop</code>: the total population of each district.</li>
<li><code>total_vap</code>: the total voting-aged population of each
district.</li>
<li><code>pop_*</code>, <code>vap_*</code>: total (voting-aged)
population within racial and ethnic groups for each district. Variable
codes documented <a
href="https://github.com/alarm-redist/census-2020#data-format">here</a>.</li>
<li><code>plan_dev</code>: the maximum population deviation among
districts in the plan. Computed as
<code>max(abs(distr_pop - target_pop)/target_pop)</code>.</li>
<li><code>comp_edge</code>: compactness, as measured by the fraction of
internal edges kept. Higher values indicate more compactness.</li>
<li><code>comp_polsby</code>: compactness, as measured by the
Polsby-Popper score. Higher values indicate more compactness.</li>
<li><code>county_splits</code>: the number of counties which belong to
more than one district.</li>
<li><code>muni_splits</code>: the number of Census Designated Places
which belong to more than one district.</li>
<li><code>*_##_dem_*</code>, <code>*_##_rep_*</code>: vote counts for
statewide Democratic and Republican candidates in a certain election.
More information <a
href="https://github.com/alarm-redist/census-2020#data-format">here</a>.</li>
<li><code>adv_##</code>, <code>arv_##</code>: average vote counts for
statewide Democratic and Republican candidates in a certain year. More
information <a
href="https://github.com/alarm-redist/census-2020#data-format">here</a>.</li>
<li><code>ndv</code>, <code>nrv</code>: averages of the
<code>adv_##</code> and <code>arv_##</code> variables across all
available elections.</li>
<li><code>ndshare</code>: normal Democratic share, computed as
<code>ndv / (ndv + nrv)</code></li>
<li><code>e_dvs</code>: average Democratic vote share, computed as the
average of the Democratic vote share when first scored under each
statewide election.</li>
<li><code>pr_dem</code>: probability seat is represented by a Democrat;
calculated as the fraction of statewide elections under which the
district had a majority Democratic share.</li>
<li><code>e_dem</code>: expected number of Democratic seats for the
plan; equivalent to summing the <code>pr_dem</code> values across
districts</li>
<li><code>pbias</code>: partisan bias at 50% vote share, averaged across
all available elections. Positive values indicate Republican bias.</li>
<li><code>egap</code>: the efficiency gap, averaged across all available
elections. Positive values indicate Republican bias.</li>
</ul>
